package jdesktop.appbar.win32;

import com.sun.jna.Pointer;

import java.awt.*;

/**
 * This window procedure delegate is used when the window is not docked, but floating on the desktop.
 */
public class FloatingWndProc extends CommonWndProc
{
    public FloatingWndProc(WndProcState windowProcedureState)
    {
        super(windowProcedureState);
    }

    @Override
    protected Rectangle appBarSizing(int uParam, int left, int top, int right, int bottom)
    {
        return null;
    }

    @Override
    protected void handleMessage(Pointer hWnd, int uMsg, int wParam, int lParam)
    {
        assert !windowProcedureState.getAppBarModel().isDocked();
        super.handleMessage(hWnd, uMsg, wParam, lParam);
    }

    @Override
    protected void handleGetMinMaxInfo(int pMinMaxInfo)
    {
        // do nothing, use the default
    }

    @Override
    protected void handleHitTest(Pointer hWnd, int uMsg, int wParam, int lParam)
    {

    }
}
